package com.example.wan1.view.search;

import com.example.wan1.R;
import com.example.wan1.adapter.ArticleListAdapter;
import com.example.wan1.di.ano.ActivityScope;
import com.example.wan1.model.ArticleBean;

import java.util.ArrayList;
import java.util.List;

import dagger.Binds;
import dagger.Module;
import dagger.Provides;

/***
 * 创建时间：2020/8/25 21:25
 * 创建人：10850
 * 功能描述：搜索的module
 * 1.ArticleListAdapter与list的关系搭不上，导致RV加载不出数据。作用域的问题，噗
 * 因为我更新数据的时候，是使用的mlist添加所有的数据源。所以要加作用域。而其他的页面都是adapter添加的数据
 */
@Module
public abstract class SearchModule {
    //如果v层使用的是P层的接口，那么注入P层，可以像下面这样 这么写
    /*@ActivityScope
    @Binds
    abstract SearchContract.Presenter articlePresenter(SearchPresenter presenter);*/

    //在P层，注入v层
    @Binds
    abstract SearchContract.View searchView(SearchActivity searchActivity);

    @ActivityScope
    @Provides
    static ArticleListAdapter provideAdapter(List<ArticleBean> mList) {
        return new ArticleListAdapter(R.layout.article_item, mList);
    }

    @ActivityScope
    @Provides
    static List<ArticleBean> provideList() {
        return new ArrayList<>();
    }
}
